:: (a -> b -> c) -> f a -> f b -> f c -package:generic-data package:can-i-haz

Promote a function to a monad, scanning the monadic arguments from left to right. For example,
liftM2 (+) [0,1] [0,2] = [0,2,1,3]
liftM2 (+) (Just 1) Nothing = Nothing